Parameter adjuster

ABSTRACT

A chromosome using each of a plurality of parameters of a physical model of a semiconductor element as a gene is defined and the parameters are optimized using a genetic algorithm based on the characteristics measurement data of the semiconductor element fabricated by way of trial. In the selection processing of the genetic algorithm, a sum of a first evaluation value based on linear scale data and a second evaluation value based on logarithmic scale data is employed as the evaluation value of the chromosome.

TECHNICAL FIELD

The present invention relates to a parameter tuning device, and inparticular, relates to a parameter tuning device capable of tuning alarge number of parameters in a physical model of a semiconductor devicesuch as a transistor in a short time.

When manufacturing an LSI, first, several samples of transistors(MOSFET) having different sizes such as a channel length L and channelwidth W of gates of the transistor (MOSFET) are manufactured on aprocessing line. Next, from the results of measurement of electricalcharacteristics of the test devices, a plurality of parameters in aphysical model of the transistors is tuned so as to match tocharacteristics of transistors manufactured on the processing line withhigh precision. Also, using the physical model of the transistors,simulations of various kinds of LSIs (transistors) manufactured on theprocessing line are performed using a well-known circuit simulator suchas SPICE.

A physical model of transistors represents relationships such as Vg(gate voltage), Vd (drain voltage), and Id (drain current) withequations including variables such as a gate channel length L, a channelwidth W, and a plurality of parameters, and a large number of modelshave been proposed. In the above simulations, for example, a typical andwell-known BSIM (Berkeley Short Channel IGFET Model) is used.

The BSIM is formed of a large number of equations, and the number ofparameters to be tuned is more than 50. Regarding the physical models oftransistors and conventional parameter tuning methods, because they aredescribed for example in the following document, their detailedexplanations are omitted.

Non-patent document 1: Toru Toyabe, ed., “MOSFET Modeling and BSIM3Users Guide”, Feb. 28, 2002, published by Maruzen

Conventionally, parameter tuning devices which automatically performparameter fitting (tuning) of physical models including pluralparameters using genetic algorithms from experimental results, and thelike, have been proposed. For example, in Patent Document 1 filed by thepresent inventors, a general parameter tuning device which automaticallyperforms parameter tuning process of physical models including pluralparameters using genetic algorithms has been proposed.

Patent document 1: Japanese Patent Publication (Kokai) No. 2003-108972

DISCLOSURE OF THE INVENTION

The Subject of the Invention to be Solved

In the above conventional parameter tuning method, because a largenumber of parameters can not be optimized simultaneously, tuning of allthe parameters is performed by iterating an operation of firstoptimizing only a part of the parameters and then optimizing anotherpart of the parameters with the fixed parameter. In the method, there isa problem of not capable of resolving optimal parameters depending on aprocessing order of parameters to optimize, or of requiring a largeamount of time and labor for resolving.

Therefore, the present inventors performed a study on applying the abovegeneral parameter tuning process to parameter tuning of physical modelsof transistors. But there is a problem that tuning of parameters withefficiency and good precision is difficult even when applying theconventional genetic algorithm as-is to the parameter tuning of physicalmodels of transistors. A purpose of the present invention is to solvethe above problems.

Means for Solving the Subject

A parameter tuning device of the present invention is mainlycharacterized in that it has means for generating new parameter genes bya special crossover process. Also, it has normalization means forapplying to real-number parameters. Furthermore, it is characterizedalso by an evaluation means for performing evaluation of parameters soas to match characteristics particular to transistors (MOSFET) with highprecision.

Effect of the Invention

The parameter tuning device of the present invention withcharacteristics described above has an effect that it becomes possibleto apply genetic algorithms to parameter tuning of physical models oftransistors, and optimal parameters can be decided in a short time.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow chart showing an overall procedure when performingsimulation using a parameter tuning device of the present invention;

FIG. 2 is a general flow chart showing a parameter tuning process;

FIG. 3 is a flow chart showing a detail of a crossover process in S43;

FIG. 4 is an explanatory drawing showing an example of a crossovermethod of the present invention.

FIG. 5 is a flow chart showing a detail of an evaluation computationprocess;

FIGS. 6(a) and 6(b) are graphs showing Id-Vg characteristics of atransistor;

FIG. 7 is a flow chart showing one example of an evaluation valuecomputation in S15;

FIG. 8 is a flow chart showing a discrete data normalization process inS17; and

FIG. 9 is an explanatory drawing showing a method of selection of sizesof transistors to be test manufactured.

Explanation of Reference Numerals

G: Center of gravity

P1-P3: Parent individuals

BEST MODE FOR PERFORMING THE INVENTION

A parameter tuning device of the present invention is implemented bycreating a program for executing a process indicated by a flow chart tobe described, and installing the program on a well-known optionalcomputer system that is capable of executing it. Regarding hardware ofthe computer system, because it is well known, a detailed explanation isomitted. Embodiment 1 is explained below.

Embodiment 1

FIG. 1 is a flow chart showing an overall procedure when performingsimulation using a parameter tuning device of the present invention. Aspreviously noted, when manufacturing an LSI, first, in S50, severalsamples of transistors (MOSFET) having different sizes such as a channellength L and channel width W of gates are test manufactured on an LSIprocessing line.

FIG. 9 is an explanatory drawing showing a method of selection of sizesof transistors to be test manufactured. The size selection method, forexample, divides between the maximum values and minimum values of L andW at equal intervals, or making sides near the minimum values more fine,and selects divisions (sizes) of the transistors to be test manufacturedso as to become a cross shape on the L-W plane.

In S51, electrical characteristics of the test-manufactured transistorsare measured. Concretely, measurements to obtain plural sample values(discrete data) respectively concerning Id-Vd characteristic (Vb fixed),Id-Vd characteristic (Vg fixed), and Id-Vg characteristic (Vd fixed) areperformed multiple times while changing the fixed values.

In S52, a parameter tuning process of a physical model of transistors isperformed by a method to be described later using the parameter tuningdevice of the present invention so as to match the characteristics ofthe transistors manufactured on the processing line with high precision.

In S53, using the physical model with the parameters tuned, operatingsimulations of transistors having arbitrary channel lengths and channelwidths manufactured on the processing line are performed using awell-known circuit simulator such as SPICE.

By using the parameter tuning device of the present invention,high-precision parameters of the physical model can be obtained in ashort time, and high-precision simulations can be performed.

FIG. 2 is a general flow chart showing a parameter tuning (fitting)process using a genetic algorithm. In S41, one or more discrete datagroups (measurement results) are prepared. In S42, N chromosomes havingarbitrary parameters of functions in a physical model of transistors asgenes are prepared as an individual population. Individual generation isto decide the values of the genes in the chromosome and to compute anevaluation value of that chromosome. N must be a number greater than orequal to 2.

In the BSIM, although there are 50 or more parameters as previouslynoted, depending on the details to be simulated, there may be parametersfixed to default values without tuning, or may be ignored. Accordingly,the number n of parameters to be tuned differs according to the purposeof the simulation, and although there may be 50 or more, it also may befor example 10. Therefore, the parameters such as the number ofchromosomes N or the number of generated children (Child) in the geneticalgorithm are changed depending on the number n of the parameters to betuned. Accordingly, the process becomes faster as n becomes smaller. Inthe embodiment, for example, the number of chromosomes is set to N=n×15.In the BSIM, because a recommended range of initial parameter values isestablished for each parameter, an initial value is decided randomlywithin the recommended range of initial values for each parameter.

In S43, chromosomes to become parent individuals are selected from theindividual population generated in S42. The number p of parentindividuals selected in the process must be less than or equal to N.Child individuals are generated by a crossover process to be describedlater from the selected parent individuals. In S44, the evaluationvalues of the child individuals generated in S43 are computed (thedetails are described later).

In S45, the parent individuals selected in S43 and p in the order ofbetter evaluation from the child individuals generated in S44 arereturned to the individual population, and the rest are discarded. Bythis process, the chromosomes having low evaluation values areeliminated. In addition, a method also may be used, in which a portionof the parent individuals is returned as-is to the population withoutbeing subject to elimination, and a number in the amount of “remainingparent individuals” and the remaining parent individuals in the order ofbetter evaluation from the child individuals are returned.

In S46, it is determined whether an algorithm switching condition issatisfied. If the condition is not satisfied, it returns to S43, but ifthe condition is satisfied, it moves to S47. As the condition, whetherthe number of computations exceeds a prescribed value, or a rate ofreduction of evaluation value becomes less a prescribed value can beused. In S47, tuning of the parameters is performed by the well-knownPowell method as a local search method or other well-known local searchmethod. By switching the search method in this manner, the time ofparameter tuning is shortened.

Next, a crossover process in the present invention is explained. As aconventional crossover method, a process of partially replacing genes ofchromosomes has been performed. Although the conventional crossovermethod is effective when the genes have bit values (0 or 1), it is notnecessarily an effective crossover method when the genes are realnumbers. The reason why is because a space of genotypes defined in thebinary expression has a different phase structure from a space of theactual parameters after conversion to real numbers, and thereforecontinuity of the parameters is not considered.

For example, in the case that one bit in a binary number is inverted,the parameter after the inversion, depending on a position of theinverted bit, becomes larger when the highest bit is inverted, but theparameter value almost does not change at all when the lowest bit isinverted. Because the parameters subject to tuning in the presentinvention are real numbers, it is difficult to perform effective tuningwith the conventional crossover method. Therefore, the crossover methodoriented toward real numbers described below is used rather than theconventional crossover method.

FIG. 3 is a flow chart showing a detail of the crossover process in S43.The crossover method is oriented toward real numbers, which generatesgenes of child individuals from a simplex computed from genes of pluralparent individuals. FIG. 4 is an explanatory drawing showing an exampleof the crossover method. In S31, p parent individuals are randomlyselected from the individual population. The value of p is desirablydefined as p=n+1 when there are n parameters to be tuned. In S32, thecenter of gravity G of the p parent individuals selected in S31 issought. That is, an average value is sought for each parameter.

In S33, a variable c is set to 1, and in S34, one child individual isgenerated by Equation 1 below using the center of gravity G and auniformly distributed random number. $\begin{matrix}{{C = {x_{p} + C_{p}}}{x_{k} = {G + {ɛ\left( {P_{k} - G} \right)}}}{C_{k} = \begin{Bmatrix}{0\left( {k = 0} \right)} \\{{r_{k - 1}\left( {x_{k - 1} - x_{k} + C_{k - 1}} \right)}\left( {k = {1\quad\ldots\quad p}} \right)}\end{Bmatrix}}{r_{k} = \left( {u\left( {0,1} \right)}^{\frac{1}{k - 1}} \right)}} & \left\lbrack {{Equation}\quad 1} \right\rbrack\end{matrix}$Here, p is the number of parent individuals selected, C is a vectorindicating the chromosome of the child individual generated, and Pk is avector indicating the chromosome of the selected parent individual. Inthe present embodiment, the number of parent individuals selected is setto n+1. Also, u(0,1) is a uniformly distributed random number in aninterval [0,1].

In S35, 1 is added to the variable c, and in S36, it is determinedwhether the variable c is greater than the constant “child”. If thedetermination result is negative, it returns to S34, but if it isaffirmative, the crossover process ends. By this processing, a “child”number of child individuals are generated. “Child” is desirably about10×n.

FIG. 4 is an explanatory drawing showing a search range of simplexcrossovers (generated range of child individuals) when there are 2parameters α and β the number of parent individuals randomly selectedfrom the individual population is 3. The generated range of childindividuals (inside of outer triangle in FIG. 4) is decided bymultiplying by ε the vectors of parent individuals up to P1-P3 from thecenter of gravity G, and a child individual is generated using a uniformrandom number from that range. The recommended value of ε is √{squareroot over ((p+1))} when the number of parent individuals is p. When thenumber of parameters is 3 or more, the generated range of childindividuals becomes a space inside a hyperpolyhedron surrounded byplural hyperplanes.

By using such a crossover method, in response to problems in which theparameters to be subject to tuning are real numbers, the parameters canbe handled positively, and effective tuning can be performed. Being ableto handle positively means that an individual in the vicinity of theparameter space is also in the vicinity of the gene space. Such acrossover method has characteristics that it is robust to thedependencies among variables and it does not depend on the method ofscaling. It is suitable for tuning of parameters of functions in anelectrical characteristics model of transistors in which thedependencies among the parameters are strong and there are a largenumber of parameters having different scaling.

Usually, in the genetic algorithms, a process called mutation isperformed in addition to the crossover. Mutation, in the case ofconventional genetic algorithms that handle discrete binary data,performs an operation of inverting a part of genes of a chromosome.Also, in the case of genetic algorithms that handle real numbers, anoperation of adding a normal random number generated according to thenormal distribution N(0, σ²) to each gene of the chromosome has beenproposed. However, because the crossover method of the present inventionas noted above uses random numbers in the crossover process, it combinesalso the property of mutation. Therefore, the mutation is not performedin the case of using the crossover method as noted above.

Next, the evaluation value executed in S44 is explained. The evaluationvalue of a chromosome is computed from prepared discrete data groups andestimation data groups computed as a function in an electricalcharacteristics model of transistors using genes of the chromosome asmodel parameters. The evaluation value is a value indicating how closethe genes in the chromosome are to ideal values as model parameters.

FIG. 5 is a flow chart showing a detail of the evaluation computationprocess. In S12, the gene information of the chromosome is read in, andit is taken as model parameters in functions of the electricalcharacteristics model of transistors. In S13-1 . . . S13-d, the discretedata groups are read in. d is the number of discrete data groups readin.

In S14-1 . . . S14-d, estimation data groups for predicting the discretedata groups are computed based on the model parameters input in S12. Theestimation data groups are present in the same number as the discretedata groups. In S15, the evaluation value of the chromosome is computedfrom the discrete data groups and the estimation data groups. As theevaluation function, the square error to be described later, or thelike, is used.

FIG. 6(a) is a graph of linear scale and FIG. 6(b) is a graph of log(logarithmic) scale showing the Id-Vg characteristics of a transistor.As in the parts surrounded by the ellipses in FIG. 6, there is a part inthe discrete data group, where it appears as almost 0 when viewed on thelinear scale in FIG. 6(a) but the values are greatly changed when viewedon the log scale in FIG. 6(b). Such a property is called sub-thresholdcharacteristic.

Because the absolute value of this part is small compared with the otherparts, the absolute value of the error also is small, and it isdifficult to optimize this part using only the normal linear scale datagroup. Also, although the sub-threshold characteristic can be optimizedif the optimization is performed by preparing only a log scale datagroup in order to tune this part, the error of the other parts becomesgreater and discrepancy occurs.

Therefore, in the present invention, attention is on the fact that theelectrical characteristics model parameters of MOS- transistors areindependent between the parameters for estimating the sub-thresholdcharacteristic and the parameters for estimating the other parts. By thescaling process shown below, the log scale data group and the linearscale data group are read in simultaneously, and all the characteristicsare tuned simultaneously.

In the case when the scaling among discrete data groups is different, ifthe square error is taken, the data group having small scale comes tohave smaller influence on the evaluation value. Therefore, there is aconcern that the tuning precision may fall even when the scaling processpreviously described is performed. Therefore, in the present invention,the tuning precision is improved by normalizing the discrete data ineach data group and unifying the scale.

FIG. 7 is a flow chart showing one example of computation of evaluationvalue, in which the above scaling and discrete data normalization methodare packaged in S15. In S16, logarithmic data converted the discretedata groups and the corresponding estimation data groups to log scaleare generated. In S17, all the data groups are normalized.

FIG. 8 is a flow chart showing one example of the normalizationprocessing of discrete data performed in S17. In S21, the data groupsare read in. In S22, conversion of the data indicated below isperformed. That is, first, the maximum value fmax and minimum value fminin the data groups are sought. Next, all the discrete data f(i) in thedata groups are converted to normalized data g(i) by Equation 2 below.$\begin{matrix}{{g(i)} = \frac{{f(i)} - f_{\min}}{f_{\max} - f_{\min}}} & \left\lbrack {{Equation}\quad 2} \right\rbrack\end{matrix}$Here, g(i) is normalized data, f(i) is discrete data, fmax is a maximumvalue in data groups, and fmin is a minimum value in the data groups. Bythis computation, the discrete data can be normalized to within therange of [0, 1].

Returning to FIG. 7, in S18, the evaluation value of only the linearscale data groups is computed and is taken as A. A is a sum of thesquare errors between the normalized discrete data and the normalizedestimation data. In S19, the evaluation value of only the log scale datagroups is computed and is taken as B. B is a sum of the square errorsbetween the normalized logarithmic discrete data and the normalizedlogarithmic estimation data. In S20, A+B is taken as an evaluation valueof the chromosome. Although the square error is used for computation ofthe evaluation value, it also may be made such that the error ratio issought instead of the square error.

By the processing as described above, high-precision parameter tuning ispossible in a short time. Also, because high-precision circuitsimulation can be performed without test manufacturing by using theparameters in question for the physical model, the efficiency ofmanufacturing of semiconductor devices is improved.

Embodiment 1 is explained above, but in the parameter tuning device ofthe present invention, modified examples as below also can be imagined.The BSIM is given as an example of the physical model of transistors,but the present invention can use any well-known physical model oftransistors in addition to the BSIM. Furthermore, the present inventioncan be applied to any well-known semiconductor device other thantransistors.

POSSIBILITY OF USING ABILITY IN INDUSTRY

The present invention can be utilized in the simulation of various kindsof LSIs manufactured on an LSI processing line using the physical modelsof transistors.

1. A parameter tuning device, comprising: parameter tuning means fordefining chromosomes having a plurality of parameters of a physicalmodel of a semiconductor device as a gene and optimizing the parametersusing a genetic algorithm based on characteristic measurement data of atest-manufactured semiconductor device.
 2. A parameter tuning deviceaccording to claim 1, wherein said parameter tuning means includesgeneration range deciding means for obtaining a center of gravity of aparent chromosome group in a vector space to determine a generationrange of a child chromosome group inside a hyper-polyhedron on a vectorspace determined from the center of gravity and values of the parentchromosome group in a crossover process in the genetic algorithm.
 3. Aparameter tuning device according to claim 1, wherein said parametertuning means includes an evaluation value computing means for obtaininga first evaluation value based on a linear scale and a second evaluationvalue based on a log scale to make a sum of the first evaluation valueand the second evaluation value as an evaluation value of the chromosomein a selection process in the genetic algorithm.
 4. A parameter tuningdevice according to claim 1, wherein said parameter tuning meansincludes normalization for unifying a scale of data in the selectionprocess in the genetic algorithm.
 5. A parameter tuning device accordingto claim 1, wherein said parameter tuning means includes search methodswitching means for switching to local searching means when a parametertuning process in the genetic algorithm satisfies a predeterminedcondition.